package gijoe.dao;

import gijoe.dto.AbroadDto;
import gijoe.dto.ApplicationDto;
import gijoe.dto.AwdDto;
import gijoe.dto.BoardNoticeDto;
import gijoe.dto.BoardRecruitDto;
import gijoe.dto.CareerDto;
import gijoe.dto.CertiDto;
import gijoe.dto.ChartDto;
import gijoe.dto.ClubDto;
import gijoe.dto.CommcdDto;
import gijoe.dto.HopeDto;
import gijoe.dto.InfoDto;
import gijoe.dto.IntroDto;
import gijoe.dto.LangDto;
import gijoe.dto.ParttimeDto;
import gijoe.dto.SchDto;
import gijoe.dto.SubmitDto;

import java.util.HashMap;
import java.util.List;

public interface AdminDao {
  
  
  //공지사항 게시판
  public List<BoardNoticeDto> noticeSelectAllMain();
  
  public List<BoardNoticeDto> noticeSelectAll(HashMap map);
  public BoardNoticeDto noticeSelectOne(String notice_num);
  
  public int getNoticeCount(); 
  public List<BoardNoticeDto> noticeSearch(HashMap map);
  public int getNoticeSearch(String search);

  public void noticeInsert(BoardNoticeDto dto);
  public void noticeDelete(BoardNoticeDto dto);
  public void noticeUpdate(BoardNoticeDto dto);


  //채용공고 게시판 관련
  public List<BoardRecruitDto> recruitSelectAll(HashMap map);
  public BoardRecruitDto recruitSelectOne(String rcrt_num);
  
  public int getRecruitCount(); 
  public List<BoardRecruitDto> recruitSearch(HashMap map);
  public int getRecruitSearch(String search);
    
  public void recruitInsert(BoardRecruitDto dto);
  public void recruitDelete(BoardRecruitDto dto);
  public void recruitUpdate(BoardRecruitDto dto);
  
  public List<CommcdDto> recruit_cdSelect();


  //지원자관련
  public List<ApplicationDto> applicationSelectAll(HashMap map);
  public List<BoardRecruitDto> recruitSelectAllOption();
  public int getAppCount(); 
  public List<ApplicationDto> appSearch(HashMap map);
  public int getAppSearch(String app_nm, String app_stat, String rcrt_num);
  
  
  public ApplicationDto applicationSelectOne(String app_num);
  public InfoDto infoSelectOne(String app_num);
  public List<SchDto> schSelectAll(String app_num);
  public List<AbroadDto> abroadSelectAll(String app_num);
  public List<CareerDto> careerSelectAll(String app_num);
  public List<ClubDto> clubSelectAll(String app_num);
  public List<ParttimeDto> parttimeSelectAll(String app_num);
  public List<AwdDto> awdSelectAll(String app_num);
  public List<CertiDto> certiSelectAll(String app_num);
  public HopeDto hopeSelectOne(String app_num);
  public List<LangDto> langSelectAll(String app_num);
  public IntroDto introSelectOne(String app_num);
  public SubmitDto submitSelectOne(String app_num);
  
  public void passUpdate(String[] array);
  
  

  // 통계 Start ==============================================================
  
  public List<ChartDto> Chart_recruit_p(); //신입 N
  public List<ChartDto> Chart_recruit_n(); //경력 P
  public List<ChartDto> Chart_sex_man(); //성별 남자
  public List<ChartDto> Chart_sex_she(); //성별 여자
  public List<ChartDto> Chart_age_20(); //나이 20대
  public List<ChartDto> Chart_year_2014(); //년도별 2014년
  
  // 통계 End ================================================================
}
